package com.atguigu05.method_more._04recursion.exer1;

/**
 * ClassName: RecusionExer0
 * Package: com.atguigu05.method_more._04recursion.exer1
 * Description:
 *
 * @Author xiao_qi
 * @Create 2024/4/11 21:08
 * @Version 1.0
 */
public class RecusionExer0 {

    //    练习1：
//    已知一个数列：f(20) = 1,f(21) = 4,f(n+2) = 2*f(n+1)+f(n),
//    其中n是大于0的整数，求f(10)的值。
    public int f(int b){
        if(b == 20){
            return 1;
        }
        else if(b == 21){
            return 4;
        }
        else {
            return f(b+2) - 2*f(b+1);
        }
    }

//    练习2：
//    已知有一个数列：f(0) = 1,f(1) = 4,
//    f(n+2)=2*f(n+1) + f(n),其中n是大于0的整数，求f(10)的值。

    public int fun(int n){
        if (n==0){
            return 1;
        } else if (n == 1) {
            return 4;
        }
        else {
return 2*fun(n-1)+fun(n-2);
        }
    }
}

